👉原始文件下载

点击下方直接跳转!

CS229 线性代数

为什么要学习线性代数?或者说为什么学ML要学好线代呢?

线性虽然不多见于现实应用之中,但是很多非线性的函数,我们可以转化为线性,所以线代能拓展的空间太广泛了,对于大家来说,我觉得最应该掌握的就是向量和矩阵的基本运算和属性。

大家着重下面几个概念的学习

线性代数是数学中最基础却极其重要的一门学科,因为任何科学领域都绕不过线性代数,

线性代数复习和参考

1. 基础概念和符号

线性代数提供了一种紧凑地表示和操作线性方程组的方法。 例如,以下方程组:

(1)4x15x2=13
(2)2x1+3x2=9

这是两个方程和两个变量,正如你从高中代数中所知,你可以找到 x1x2 的唯一解(除非方程以某种方式退化,例如,如果第二个方程只是第一个的倍数,但在上面的情况下,实际上只有一个唯一解)。 在矩阵表示法中,我们可以更紧凑地表达:

(3)Ax=b
(4) with A=[4523],b=[139]

我们可以看到,这种形式的线性方程有许多优点(比如明显地节省空间)。

1.1 基本符号

我们使用以下符号:

(5)x=[x1x2xn]
(6)A=[a11a12a1na21a22a2nam1am2amn]
(7)A=[|||a1a2an|||]
(8)A=[a1Ta2TamT]

2.矩阵乘法

两个矩阵相乘,其中 ARm×n and BRn×p ,则:

(9)C=ABRm×p

其中:

(10)Cij=k=1nAikBkj

请注意,为了使矩阵乘积存在,A中的列数必须等于B中的行数。有很多方法可以查看矩阵乘法,我们将从检查一些特殊情况开始。

2.1 向量-向量乘法

给定两个向量x,yRn,xTy通常称为向量内积或者点积,结果是个实数

(11)xTyR=[x1x2xn][y1y2yn]=i=1nxiyi

注意:xTy=yTx 始终成立。

给定向量 xRm, yRn (他们的维度是否相同都没关系),xyTRm×n叫做向量外积 , 当 (xyT)ij=xiyj 的时候,它是一个矩阵。

(12)xyTRm×n=[x1x2xm][y1y2yn]=[x1y1x1y2x1ynx2y1x2y2x2ynxmy1xmy2xmyn]

举一个外积如何使用的一个例子:让1Rn表示一个n维向量,其元素都等于1,此外,考虑矩阵ARm×n,其列全部等于某个向量 xRm。 我们可以使用外积紧凑地表示矩阵 A:

(13)A=[|||xxx|||]=[x1x1x1x2x2x2xmxmxm]=[x1x2xm][111]=x1T

2.2 矩阵-向量乘法

给定矩阵 ARm×n,向量 xRn , 它们的积是一个向量 y=AxRm。 有几种方法可以查看矩阵向量乘法,我们将依次查看它们中的每一种。

如果我们按行写A,那么我们可以表示Ax为:

(14)y=Ax=[a1Ta2TamT]x=[a1Txa2TxamTx]

换句话说,第iyA的第i行和x的内积,即:yi=yi=aiTx

同样的, 可以把 A 写成列的方式,则公式如下:

(15)y=Ax=[|||a1a2an|||][x1x2xn]=[a1]x1+[a2]x2++[an]xn

换句话说,yA的列的线性组合,其中线性组合的系数由x的元素给出。

到目前为止,我们一直在右侧乘以列向量,但也可以在左侧乘以行向量。 这是写的,yT=xTA 表示ARm×nxRmyRn。 和以前一样,我们可以用两种可行的方式表达yT,这取决于我们是否根据行或列表达A.

第一种情况,我们把A用列表示:

(16)yT=xTA=xT[|||a1a2an|||]=[xTa1xTa2xTan]

这表明yT的第i个元素等于xA的第i列的内积。

最后,根据行表示A,我们得到了向量-矩阵乘积的最终表示:

(17)yT=xTA=[x1x2xn][a1Ta2TamT]=x1[a1T]+x2[a2T]++xn[anT]

所以我们看到yTA的行的线性组合,其中线性组合的系数由x的元素给出。

2.3 矩阵-矩阵乘法

有了这些知识,我们现在可以看看四种不同的(形式不同,但结果是相同的)矩阵-矩阵乘法:也就是本节开头所定义的C=AB的乘法。

首先,我们可以将矩阵 - 矩阵乘法视为一组向量-向量乘积。 从定义中可以得出:最明显的观点是C(ij)元素等于A的第i行和B的的j列的内积。如下面的公式所示:

(18)C=AB=[a1Ta2TamT][|||b1b2bp|||]=[a1Tb1a1Tb2a1Tbpa2Tb1a2Tb2a2TbpamTb1amTb2amTbp]

这里的ARm×nBRn×paiRnbjRn×p, 这里的ARm×n BRn×paiRnbjRn×p,所以它们可以计算内积。 我们用通常用行表示A而用列表示B 或者,我们可以用列表示A,用行表示B,这时AB是求外积的和。公式如下:

(19)C=AB=[|||a1a2an|||][b1Tb2TbnT]=i=1naibiT

换句话说,AB等于所有的A的第i列和Bi行的外积的和。因此,在这种情况下, aiRmbiRp, 外积aibiT的维度是m×p,与C的维度一致。

其次,我们还可以将矩阵 - 矩阵乘法视为一组矩阵向量积。如果我们把B用列表示,我们可以将C的列视为AB的列的矩阵向量积。公式如下:

(20)C=AB=A[|||b1b2bp|||]=[|||Ab1Ab2Abp|||]

这里C的第i列由矩阵向量乘积给出,右边的向量为ci=Abi。 这些矩阵向量乘积可以使用前一小节中给出的两个观点来解释。 最后,我们有类似的观点,我们用行表示AC的行作为AC行之间的矩阵向量积。公式如下:

(21)C=AB=[a1Ta2TamT]B=[a1TBa2TBamTB]

这里第i行的C由左边的向量的矩阵向量乘积给出:ciT=aiTB

将矩阵乘法剖析到如此大的程度似乎有点过分,特别是当所有这些观点都紧跟在我们在本节开头给出的初始定义(在一行数学中)之后。

这些不同方法的直接优势在于它们允许您在向量的级别/单位而不是标量上进行操作。 为了完全理解线性代数而不会迷失在复杂的索引操作中,关键是要用尽可能多的概念进行操作。

实际上所有的线性代数都处理某种矩阵乘法,花一些时间对这里提出的观点进行直观的理解是非常必要的。

除此之外,了解一些更高级别的矩阵乘法的基本属性是很有必要的:

如果您不熟悉这些属性,请花点时间自己验证它们。 例如,为了检查矩阵乘法的相关性,假设ARm×n BRn×pCRp×q。 注意ABRm×p,所以(AB)CRm×q。 类似地,BCRn×q,所以A(BC)Rm×q。 因此,所得矩阵的维度一致。 为了表明矩阵乘法是相关的,足以检查(AB)C的第(i,j)个元素是否等于A(BC)的第(i,j)个元素。 我们可以使用矩阵乘法的定义直接验证这一点:

(22)((AB)C)ij=k=1p(AB)ikCkj=k=1p(l=1nAilBlk)Ckj=k=1p(l=1nAilBlkCkj)=l=1n(k=1pAilBlkCkj)=l=1nAil(k=1pBlkCkj)=l=1nAil(BC)lj=(A(BC))ij

3 运算和属性

在本节中,我们介绍矩阵和向量的几种运算和属性。 希望能够为您复习大量此类内容,这些笔记可以作为这些主题的参考。

3.1 单位矩阵和对角矩阵

单位矩阵,IRn×n,它是一个方阵,对角线的元素是1,其余元素都是0:

(23)Iij={1i=j0ij

对于所有ARm×n,有:

(24)AI=A=IA

注意,在某种意义上,单位矩阵的表示法是不明确的,因为它没有指定I的维数。通常,I的维数是从上下文推断出来的,以便使矩阵乘法成为可能。 例如,在上面的等式中,AI=A中的I是n×n矩阵,而A=IA中的Im×m矩阵。

对角矩阵是一种这样的矩阵:对角线之外的元素全为0。对角阵通常表示为:D=diag(d1,d2,...,dn),其中:

(25)Dij={dii=j0ij

很明显:单位矩阵I=diag(1,1,...,1)

3.2 转置

矩阵的转置是指翻转矩阵的行和列。

给定一个矩阵:

ARm×n, 它的转置为n×m的矩阵ATRn×m ,其中的元素为:

(26)(AT)ij=Aji

事实上,我们在描述行向量时已经使用了转置,因为列向量的转置自然是行向量。

转置的以下属性很容易验证:

3.3 对称矩阵

如果A=AT,则矩阵ARn×n是对称矩阵。 如果A=AT,它是反对称的。 很容易证明,对于任何矩阵ARn×n,矩阵A+AT是对称的,矩阵AAT是反对称的。 由此得出,任何方矩阵ARn×n可以表示为对称矩阵和反对称矩阵的和,所以:

(27)A=12(A+AT)+12(AAT)

上面公式的右边的第一个矩阵是对称矩阵,而第二个矩阵是反对称矩阵。 事实证明,对称矩阵在实践中用到很多,它们有很多很好的属性,我们很快就会看到它们。 通常将大小为n的所有对称矩阵的集合表示为Sn,因此ASn意味着A是对称的n×n矩阵;

3.4 矩阵的迹

方矩阵ARn×n的迹,表示为tr(A)(或者只是trA,如果括号显然是隐含的),是矩阵中对角元素的总和:

(28)trA=i=1nAii

CS229讲义中所述,迹具有以下属性(如下所示):

作为如何证明这些属性的示例,我们将考虑上面给出的第四个属性。 假设ARm×nBRn×m(因此ABRm×m是方阵)。 观察到BARn×n也是一个方阵,因此对它们进行迹的运算是有意义的。 要证明trAB=trBA,请注意:

(29)trAB=i=1m(AB)ii=i=1m(j=1nAijBji)=i=1mj=1nAijBji=j=1ni=1mBjiAij=j=1n(i=1mBjiAij)=j=1n(BA)jj=trBA

这里,第一个和最后两个等式使用迹运算符和矩阵乘法的定义,重点在第四个等式,使用标量乘法的可交换性来反转每个乘积中的项的顺序,以及标量加法的可交换性和相关性,以便重新排列求和的顺序。

3.5 范数

向量的范数x是非正式度量的向量的“长度” 。 例如,我们有常用的欧几里德或2范数,

(30)x2=i=1nxi2

注意:x22=xTx

更正式地,范数是满足4个属性的函数(f:RnR):

  1. 对于所有的 xRn, f(x)0(非负).
  2. 当且仅当x=0 时,f(x)=0 (明确性).
  3. 对于所有xRn,tR,则 f(tx)=|t|f(x) (正齐次性).
  4. 对于所有 x,yRn, f(x+y)f(x)+f(y) (三角不等式)

其他范数的例子是1范数:

(31)x1=i=1n|xi|

范数:

(32)x=maxi|xi|

事实上,到目前为止所提出的所有三个范数都是p范数族的例子,它们由实数p1参数化,并定义为:

(33)xp=(i=1n|xi|p)1/p

也可以为矩阵定义范数,例如Frobenius范数:

(34)AF=i=1mj=1nAij2=tr(ATA)

许多其他更多的范数,但它们超出了这个复习材料的范围。

3.6 线性相关性和秩

一组向量x1,x2,xnR, 如果没有向量可以表示为其余向量的线性组合,则称称该向量是线性无相关的。 相反,如果属于该组的一个向量可以表示为其余向量的线性组合,则称该向量是线性相关的。 也就是说,如果:

(35)xn=i=1n1αixi

对于某些标量值α1,αn1R,要么向量x1,x2,xn是线性相关的; 否则,向量是线性无关的。 例如,向量:

(36)x1=[123]x2=[415]x3=[231]

是线性相关的,因为:x3=2x1+x2

矩阵ARm×n列秩是构成线性无关集合的A的最大列子集的大小。 由于术语的多样性,这通常简称为A的线性无关列的数量。同样,行秩是构成线性无关集合的A的最大行数。 对于任何矩阵ARm×n,事实证明A的列秩等于A的行秩(尽管我们不会证明这一点),因此两个量统称为A,用 rank(A)表示。 以下是秩的一些基本属性:

3.7 方阵的逆

方阵ARn×n的倒数表示为A1,并且是这样的独特矩阵:

(37)A1A=I=AA1

请注意,并非所有矩阵都具有逆。 例如,非方形矩阵根据定义没有逆。 然而,对于一些方形矩阵A,可能仍然存在A1可能不存在的情况。 特别是,如果A1存在,我们说A可逆的或非奇异的,否则就是不可逆奇异的。 为了使方阵A具有逆A1,则A必须是满秩。 我们很快就会发现,除了满秩之外,还有许多其它的充分必要条件。 以下是逆的属性; 假设A,BRn×n,而且是非奇异的:

3.8 正交阵

如果 xTy=0,则两个向量x,yRn正交的。如果x2=1,则向量xRn 被归一化。如果一个方阵URn×n的所有列彼此正交并被归一化(这些列然后被称为正交),则方阵U是正交阵(注意在讨论向量时的意义不一样)。

它可以从正交性和正态性的定义中得出:

(38)UTU=I=UUT

换句话说,正交矩阵的逆是其转置。 注意,如果U不是方阵 :即,URm×nn<m ,但其列仍然是正交的,则UTU=I,但是UUTI。我们通常只使用术语"正交"来描述先前的情况 ,其中U是方阵。 正交矩阵的另一个好的特性是在具有正交矩阵的向量上操作不会改变其欧几里德范数,即:

(39)Ux2=x2

对于任何 xR , URn是正交的。

3.9 矩阵的值域和零空间

一组向量{x1,xn}是可以表示为{x1,xn}的线性组合的所有向量的集合。 即:

(40)span({x1,xn})={v:v=i=1nαixi,αiR}

可以证明,如果{x1,xn}是一组n个线性无关的向量,其中每个xiRn,则span({x1,xn})=Rn。 换句话说,任何向量vRn都可以写成x1xn的线性组合。

向量yRm投影到{x1,xn}(这里我们假设xiRm)得到向量vspan({x1,,xn}),由欧几里德范数vy2可以得知,这样v尽可能接近y

我们将投影表示为Proj(y;{x1,xn}),并且可以将其正式定义为:

(41)Proj(y;{x1,xn})=argminvspan({x1,,xn})yv2

矩阵ARm×n的值域(有时也称为列空间),表示为R(A),是A列的跨度。换句话说,

(42)R(A)={vRm:v=Ax,xRn}

做一些技术性的假设(即A是满秩且n<m),向量yRmA的范围的投影由下式给出:

(43)Proj(y;A)=argminvR(A)vy2=A(ATA)1ATy

这个最后的方程应该看起来非常熟悉,因为它几乎与我们在课程中(我们将很快再次得出)得到的公式:用于参数的最小二乘估计一样。 看一下投影的定义,显而易见,这实际上是我们在最小二乘问题中最小化的目标(除了范数的平方这里有点不一样,这不会影响找到最优解),所以这些问题自然是非常相关的。

A只包含一列时,aRm,这给出了向量投影到一条线上的特殊情况:

(44)Proj(y;a)=aaTaTay

一个矩阵ARm×n的零空间 N(A) 是所有乘以A时等于0向量的集合,即:

(45)N(A)={xRn:Ax=0}

注意,R(A)中的向量的大小为m,而 N(A) 中的向量的大小为n,因此R(AT)N(A) 中的向量的大小均为Rn。 事实上,还有很多例子。 证明:

(46){w:w=u+v,uR(AT),vN(A)}=Rn and R(AT)N(A)={0}

换句话说,R(AT)N(A) 是不相交的子集,它们一起跨越Rn的整个空间。 这种类型的集合称为正交补,我们用R(AT)=N(A)表示。

3.10 行列式

一个方阵ARn×n的行列式是函数detRn×nRn,并且表示为|A|。 或者detA(有点像迹运算符,我们通常省略括号)。 从代数的角度来说,我们可以写出一个关于A行列式的显式公式。 因此,我们首先提供行列式的几何解释,然后探讨它的一些特定的代数性质。

给定一个矩阵:

(47)[a1Ta2TanT]

考虑通过采用A行向量a1,anRn的所有可能线性组合形成的点SRn的集合,其中线性组合的系数都在0和1之间; 也就是说,集合Sspan({a1,an})受到系数a1,an的限制的线性组合,α1,,αn满足0αi1,i=1,,n。从形式上看,

(48)S={vRn:v=i=1nαiai where 0αi1,i=1,,n}

事实证明,A的行列式的绝对值是对集合S的“体积”的度量。

比方说:一个2×2的矩阵(4):

(49)A=[1332]

它的矩阵的行是:

(50)a1=[13]a2=[32]

对应于这些行对应的集合S如图1所示。对于二维矩阵,S通常具有平行四边形的形状。 在我们的例子中,行列式的值是|A|=7(可以使用本节后面显示的公式计算),因此平行四边形的面积为7。(请自己验证!)

在三维中,集合S对应于一个称为平行六面体的对象(一个有倾斜边的三维框,这样每个面都有一个平行四边形)。行定义S3×3矩阵S的行列式的绝对值给出了平行六面体的三维体积。在更高的维度中,集合S是一个称为n维平行切的对象。

图1:(4)中给出的2×2矩阵A的行列式的图示。 这里,a1a2是对应于A行的向量,并且集合S对应于阴影区域(即,平行四边形)。 这个行列式的绝对值,|detA|=7,即平行四边形的面积。

在代数上,行列式满足以下三个属性(所有其他属性都遵循这些属性,包括通用公式):

  1. 恒等式的行列式为1, |I|=1(几何上,单位超立方体的体积为1)。
  2. 给定一个矩阵 ARn×n, 如果我们将A中的一行乘上一个标量tR,那么新矩阵的行列式是t|A|
(51)|[ta1Ta2TamT]|=t|A|

几何上,将集合S的一个边乘以系数t,体积也会增加一个系数t

  1. 如果我们交换任意两行在aiTajT,那么新矩阵的行列式是|A|,例如:
(52)|[a2Ta1TamT]|=|A|

你一定很奇怪,满足上述三个属性的函数的存在并不多。事实上,这样的函数确实存在,而且是唯一的(我们在这里不再证明了)。

从上述三个属性中得出的几个属性包括:

在给出行列式的一般定义之前,我们定义,对于ARn×nAi,jR(n1)×(n1)是由于删除第i行和第j列而产生的矩阵。 行列式的一般(递归)公式是:

(53)|A|=i=1n(1)i+jaij|Ai,j|( for any j1,,n)=j=1n(1)i+jaij|Ai,j|( for any i1,,n)

对于 AR1×1,初始情况为|A|=a11。如果我们把这个公式完全展开为 ARn×n,就等于n!n阶乘)不同的项。因此,对于大于3×3的矩阵,我们几乎没有明确地写出完整的行列式方程。然而,3×3大小的矩阵的行列式方程是相当常见的,建议好好地了解它们:

(54)|[a11]|=a11
(55)|[a11a12a21a22]|=a11a22a12a21
(56)|[a11a12a13a21a22a23a31a32a33]|=a11a22a33+a12a23a31+a13a21a32a11a23a32a12a21a33a13a22a31

矩阵ARn×n的经典伴随矩阵(通常称为伴随矩阵)表示为adj(A),并定义为:

(57)adj(A)Rn×n,(adj(A))ij=(1)i+j|Aj,i|

(注意索引Aj,i中的变化)。可以看出,对于任何非奇异ARn×n

(58)A1=1|A|adj(A)

虽然这是一个很好的“显式”的逆矩阵公式,但我们应该注意,从数字上讲,有很多更有效的方法来计算逆矩阵。

3.11 二次型和半正定矩阵

给定方矩阵ARn×n和向量xRn,标量值xTAx被称为二次型。 写得清楚些,我们可以看到:

(59)xTAx=i=1nxi(Ax)i=i=1nxi(j=1nAijxj)=i=1nj=1nAijxixj

注意:

(60)xTAx=(xTAx)T=xTATx=xT(12A+12AT)x

第一个等号的是因为是标量的转置与自身相等,而第二个等号是因为是我们平均两个本身相等的量。 由此,我们可以得出结论,只有A的对称部分有助于形成二次型。 出于这个原因,我们经常隐含地假设以二次型出现的矩阵是对称阵。 我们给出以下定义:

很明显,如果A是正定的,那么A是负定的,反之亦然。同样,如果A是半正定的,那么A是是半负定的,反之亦然。如果果A是不定的,那么A是也是不定的。

正定矩阵和负定矩阵的一个重要性质是它们总是满秩,因此是可逆的。为了了解这是为什么,假设某个矩阵ASn不是满秩。然后,假设A的第j列可以表示为其他n1列的线性组合:

(61)aj=ijxiai

对于某些x1,xj1,xj+1,,xnR。设xj=1,则:

(62)Ax=ijxiai=0

但这意味着对于某些非零向量xxTAx=0,因此A必须既不是正定也不是负定。如果A是正定或负定,则必须是满秩。 最后,有一种类型的正定矩阵经常出现,因此值得特别提及。 给定矩阵ARm×n(不一定是对称或偶数平方),矩阵G=ATA(有时称为Gram矩阵)总是半正定的。 此外,如果mn(同时为了方便起见,我们假设A是满秩),则G=ATA是正定的。

3.12 特征值和特征向量

给定一个方阵ARn×n,我们认为在以下条件下,λCA特征值xCn是相应的特征向量

(63)Ax=λx,x0

直观地说,这个定义意味着将A乘以向量x会得到一个新的向量,该向量指向与x相同的方向,但按系数λ缩放。值得注意的是,对于任何特征向量xCn和标量tCA(cx)=cAx=cλx=λ(cx)cx也是一个特征向量。因此,当我们讨论与λ相关的特征向量时,我们通常假设特征向量被标准化为长度为1(这仍然会造成一些歧义,因为xx都是特征向量,但我们必须接受这一点)。

我们可以重写上面的等式来说明(λ,x)A的特征值和特征向量的组合:

(64)(λIA)x=0,x0

但是(λIA)x=0只有当(λIA)有一个非空零空间时,同时(λIA)是奇异的,x才具有非零解,即:

(65)|(λIA)|=0

现在,我们可以使用行列式的先前定义将表达式|(λIA)|扩展为λ中的(非常大的)多项式,其中,λ的度为n。它通常被称为矩阵A的特征多项式。

然后我们找到这个特征多项式的n(可能是复数)根,并用λ1,,λn表示。这些都是矩阵A的特征值,但我们注意到它们可能不明显。为了找到特征值λi对应的特征向量,我们只需解线性方程(λIA)x=0,因为(λIA)是奇异的,所以保证有一个非零解(但也可能有多个或无穷多个解)。

应该注意的是,这不是实际用于数值计算特征值和特征向量的方法(记住行列式的完全展开式有n!项),这是一个数学上的争议。

以下是特征值和特征向量的属性(所有假设在ARn×n具有特征值λ1,,λn的前提下):

3.13 对称矩阵的特征值和特征向量

通常情况下,一般的方阵的特征值和特征向量的结构可以很细微地表示出来。 值得庆幸的是,在机器学习的大多数场景下,处理对称实矩阵就足够了,其处理的对称实矩阵的特征值和特征向量具有显着的特性。

在本节中,我们假设A是实对称矩阵, 具有以下属性:

  1. A的所有特征值都是实数。 我们用用λ1,,λn表示。
  2. 存在一组特征向量u1un,对于所有iui是具有特征值λib的特征向量。u1un是单位向量并且彼此正交。

U是包含ui作为列的正交矩阵:

(68)U=[|||u1u2un|||]

Λ=diag(λ1,,λn)是包含λ1,,λn作为对角线上的元素的对角矩阵。 使用2.3节的方程(2)中的矩阵 - 矩阵向量乘法的方法,我们可以验证:

(69)AU=[|||Au1Au2Aun|||]=[||||λ1u1λ2u2λnun||||]=Udiag(λ1,,λn)=UΛ

考虑到正交矩阵U满足UUT=I,利用上面的方程,我们得到:

(70)A=AUUT=UΛUT

这种A的新的表示形式为UΛUT,通常称为矩阵A的对角化。术语对角化是这样来的:通过这种表示,我们通常可以有效地将对称矩阵A视为对角矩阵 , 这更容易理解。关于由特征向量U定义的基础, 我们将通过几个例子详细说明。

背景知识:代表另一个基的向量。

任何正交矩阵U=[|||u1u2un|||]定义了一个新的属于Rn的基(坐标系),意义如下:对于任何向量xRn都可以表示为u1un的线性组合,其系数为x1,xn

(71)x=x^1u1++x^nun=Ux^

在第二个等式中,我们使用矩阵和向量相乘的方法。 实际上,这种x^是唯一存在的:

(72)x=Ux^UTx=x^

换句话说,向量x^=UTx可以作为向量x的另一种表示,与U定义的基有关。

“对角化”矩阵向量乘法。 通过上面的设置,我们将看到左乘矩阵A可以被视为左乘以对角矩阵关于特征向量的基。 假设x是一个向量,x^表示U的基。设z=Ax为矩阵向量积。现在让我们计算关于U的基z 然后,再利用UUT=UT=I和方程A=AUUT=UΛUT,我们得到:

(73)z^=UTz=UTAx=UTUΛUTx=Λx^=[λ1x^1λ2x^2λnx^n]

我们可以看到,原始空间中的左乘矩阵A等于左乘对角矩阵Λ相对于新的基,即仅将每个坐标缩放相应的特征值。 在新的基上,矩阵多次相乘也变得简单多了。例如,假设q=AAAx。根据A的元素导出q的分析形式,使用原始的基可能是一场噩梦,但使用新的基就容易多了:

(74)q^=UTq=UTAAAx=UTUΛUTUΛUTUΛUTx=Λ3x^=[λ13x^1λ23x^2λn3x^n]

“对角化”二次型。作为直接的推论,二次型xTAx也可以在新的基上简化。

(75)xTAx=xTUΛUTx=x^Λx^=i=1nλix^i2

(回想一下,在旧的表示法中,xTAx=i=1,j=1nxixjAij涉及一个n2项的和,而不是上面等式中的n项。)利用这个观点,我们还可以证明矩阵A的正定性完全取决于其特征值的符号:

  1. 如果所有的λi>0,则矩阵A正定的,因为对于任意的x^0,xTAx=i=1nλix^i2>0
  2. 如果所有的λi0,则矩阵A是为正半定,因为对于任意的x^,xTAx=i=1nλix^i20
  3. 同样,如果所有λi<0λi0,则矩阵A分别为负定或半负定。
  4. 最后,如果A同时具有正特征值和负特征值,比如λλi>0λj<0,那么它是不定的。这是因为如果我们让x^满足x^i=1x^k=0,同时所有的ki,那么xTAx=i=1nλix^i2>0 ,我们让x^满足x^i=1x^k=0,同时所有的ki,那么xTAx=i=1nλix^i2<0

特征值和特征向量经常出现的应用是最大化矩阵的某些函数。特别是对于矩阵ASn,考虑以下最大化问题:

(76)maxxRn xTAx=i=1nλix^i2 subject to x22=1

也就是说,我们要找到(范数1)的向量,它使二次型最大化。假设特征值的阶数为λ1λ2λn,此优化问题的最优值为λ1,且与λ1对应的任何特征向量u1都是最大值之一。(如果λ1>λ2,那么有一个与特征值λ1对应的唯一特征向量,它是上面那个优化问题的唯一最大值。) 我们可以通过使用对角化技术来证明这一点:注意,通过公式Ux2=x2推出x2=x^2,并利用公式:

xTAx=xTUΛUTx=x^Λx^=i=1nλix^i2,我们可以将上面那个优化问题改写为:

(77)maxx^Rn x^TΛx^=i=1nλix^i2 subject to x^22=1

然后,我们得到目标的上界为λ1

(78)x^TΛx^=i=1nλix^i2i=1nλ1x^i2=λ1

此外,设置x^=[100]可让上述等式成立,这与设置x=u1相对应。

4.矩阵微积分

虽然前面章节中的主题通常包含在线性代数的标准课程中,但似乎很少涉及(我们将广泛使用)的一个主题是微积分扩展到向量设置展。尽管我们使用的所有实际微积分都是相对微不足道的,但是符号通常会使事情看起来比实际困难得多。 在本节中,我们将介绍矩阵微积分的一些基本定义,并提供一些示例。

4.1 梯度

假设f:Rm×nR是将维度为m×n的矩阵ARm×n作为输入并返回实数值的函数。 然后f的梯度(相对于ARm×n)是偏导数矩阵,定义如下:

(79)Af(A)Rm×n=[f(A)A11f(A)A12f(A)A1nf(A)A21f(A)A22f(A)A2nf(A)Am1f(A)Am2f(A)Amn]

即,m×n矩阵:

(80)(Af(A))ij=f(A)Aij

请注意,Af(A)的维度始终与A的维度相同。特殊情况,如果A只是向量ARn,则

(81)xf(x)=[f(x)x1f(x)x2f(x)xn]

重要的是要记住,只有当函数是实值时,即如果函数返回标量值,才定义函数的梯度。例如,ARm×n相对于x,我们不能取Ax的梯度,因为这个量是向量值。 它直接从偏导数的等价性质得出:

原则上,梯度是偏导数对多变量函数的自然延伸。然而,在实践中,由于符号的原因,使用梯度有时是很困难的。例如,假设ARm×n是一个固定系数矩阵,假设bRm是一个固定系数向量。设f:Rm×nRf(z)=zTz定义的函数,因此zf(z)=2z。但现在考虑表达式,

(82)f(Ax)

该表达式应该如何解释? 至少有两种可能性: 1.在第一个解释中,回想起zf(z)=2z。 在这里,我们将f(Ax)解释为评估点Ax处的梯度,因此:

(83)f(Ax)=2(Ax)=2AxRm

2.在第二种解释中,我们将数量f(Ax)视为输入变量x的函数。 更正式地说,设g(x)=f(Ax)。 然后在这个解释中:

(84)f(Ax)=xg(x)Rn

在这里,我们可以看到这两种解释确实不同。 一种解释产生m维向量作为结果,而另一种解释产生n维向量作为结果! 我们怎么解决这个问题?

这里,关键是要明确我们要区分的变量。 在第一种情况下,我们将函数f与其参数z进行区分,然后替换参数Ax 在第二种情况下,我们将复合函数g(x)=f(Ax)直接与x进行微分。

我们将第一种情况表示为zf(Ax),第二种情况表示为xf(Ax)

保持符号清晰是非常重要的,以后完成课程作业时候你就会发现。

4.2 黑塞矩阵

假设f:RnR是一个函数,它接受Rn中的向量并返回实数。那么关于x黑塞矩阵(也有翻译作海森矩阵),写做:x2f(Ax),或者简单地说,Hn×n矩阵的偏导数:

(85)x2f(x)Rn×n=[2f(x)x122f(x)x1x22f(x)x1xn2f(x)x2x12f(x)x222f(x)x2xn2f(x)xnx12f(x)xnx22f(x)xn2]

换句话说,x2f(x)Rn×n,其:

(86)(x2f(x))ij=2f(x)xixj

注意:黑塞矩阵通常是对称阵:

(87)2f(x)xixj=2f(x)xjxi

与梯度相似,只有当f(x)为实值时才定义黑塞矩阵。

很自然地认为梯度与向量函数的一阶导数的相似,而黑塞矩阵与二阶导数的相似(我们使用的符号也暗示了这种关系)。 这种直觉通常是正确的,但需要记住以下几个注意事项。 首先,对于一个变量f:RR的实值函数,它的基本定义:二阶导数是一阶导数的导数,即:

(88)2f(x)x2=xxf(x)

然而,对于向量的函数,函数的梯度是一个向量,我们不能取向量的梯度,即:

(89)xxf(x)=x[f(x)x1f(x)x2f(x)xn]

上面这个表达式没有意义。 因此,黑塞矩阵不是梯度的梯度。 然而,下面这种情况却这几乎是正确的:如果我们看一下梯度(xf(x))i=f(x)/xi的第i个元素,并取关于于x的梯度我们得到:

(90)xf(x)xi=[2f(x)xix12f(x)x2x2f(x)xixn]

这是黑塞矩阵第i行(列),所以:

(91)x2f(x)=[x(xf(x))1x(xf(x))2x(xf(x))n]

简单地说:我们可以说由于:x2f(x)=x(xf(x))T,只要我们理解,这实际上是取xf(x)的每个元素的梯度,而不是整个向量的梯度。

最后,请注意,虽然我们可以对矩阵ARn取梯度,但对于这门课,我们只考虑对向量xRn取黑塞矩阵。 这会方便很多(事实上,我们所做的任何计算都不要求我们找到关于矩阵的黑森方程),因为关于矩阵的黑塞方程就必须对矩阵所有元素求偏导数2f(A)/(AijAk),将其表示为矩阵相当麻烦。

4.3 二次函数和线性函数的梯度和黑塞矩阵

现在让我们尝试确定几个简单函数的梯度和黑塞矩阵。 应该注意的是,这里给出的所有梯度都是CS229讲义中给出的梯度的特殊情况。

对于xRn, 设f(x)=bTx 的某些已知向量bRn ,则:

(92)f(x)=i=1nbixi

所以:

(93)f(x)xk=xki=1nbixi=bk

由此我们可以很容易地看出xbTx=b。 这应该与单变量微积分中的类似情况进行比较,其中/(x)ax=a 现在考虑ASn的二次函数f(x)=xTAx。 记住这一点:

(94)f(x)=i=1nj=1nAijxixj

为了取偏导数,我们将分别考虑包括xkx2k因子的项:

(95)f(x)xk=xki=1nj=1nAijxixj=xk[ikjkAijxixj+ikAikxixk+jkAkjxkxj+Akkxk2]=ikAikxi+jkAkjxj+2Akkxk=i=1nAikxi+j=1nAkjxj=2i=1nAkixi

最后一个等式,是因为A是对称的(我们可以安全地假设,因为它以二次形式出现)。 注意,xf(x)的第k个元素是Ax的第k行的内积。 因此,xxTAx=2Ax。 同样,这应该提醒你单变量微积分中的类似事实,即/(x)ax2=2ax

最后,让我们来看看二次函数f(x)=xTAx黑塞矩阵(显然,线性函数bTx的黑塞矩阵为零)。在这种情况下:

(96)2f(x)xkx=xk[f(x)x]=xk[2i=1nAixi]=2Ak=2Ak

因此,应该很清楚x2xTAx=2A,这应该是完全可以理解的(同样类似于2/(x2)ax2=2a的单变量事实)。

简要概括起来:

4.4 最小二乘法

让我们应用上一节中得到的方程来推导最小二乘方程。假设我们得到矩阵ARm×n(为了简单起见,我们假设A是满秩)和向量bRm,从而使bR(A)。在这种情况下,我们将无法找到向量xRn,由于Ax=b,因此我们想要找到一个向量x,使得Ax尽可能接近 b,用欧几里德范数的平方Axb22来衡量。

使用公式x2=xTx,我们可以得到:

(97)Axb22=(Axb)T(Axb)=xTATAx2bTAx+bTb

根据x的梯度,并利用上一节中推导的性质:

(98)x(xTATAx2bTAx+bTb)=xxTATAxx2bTAx+xbTb=2ATAx2ATb

将最后一个表达式设置为零,然后解出x,得到了正规方程:

(99)x=(ATA)1ATb

这和我们在课堂上得到的相同。

4.5 行列式的梯度

现在让我们考虑一种情况,我们找到一个函数相对于矩阵的梯度,也就是说,对于ARn×n,我们要找到A|A|。回想一下我们对行列式的讨论:

(100)|A|=i=1n(1)i+jAij|Ai,j|( for any j1,,n)

所以:

(101)Ak|A|=Aki=1n(1)i+jAij|Ai,j|=(1)k+|Ak,|=(adj(A))k

从这里可以知道,它直接从伴随矩阵的性质得出:

(102)A|A|=(adj(A))T=|A|AT

现在我们来考虑函数f:S++nRf(A)=log|A|。注意,我们必须将f的域限制为正定矩阵,因为这确保了|A|>0,因此|A|的对数是实数。在这种情况下,我们可以使用链式法则(没什么奇怪的,只是单变量演算中的普通链式法则)来看看:

(103)log|A|Aij=log|A||A||A|Aij=1|A||A|Aij

从这一点可以明显看出:

(104)Alog|A|=1|A|A|A|=A1

我们可以在最后一个表达式中删除转置,因为A是对称的。注意与单值情况的相似性,其中/(x)logx=1/x

4.6 特征值优化

最后,我们使用矩阵演算以直接导致特征值/特征向量分析的方式求解优化问题。 考虑以下等式约束优化问题:

(105)maxxRnxTAx subject to x22=1

对于对称矩阵ASn。求解等式约束优化问题的标准方法是采用拉格朗日形式,一种包含等式约束的目标函数,在这种情况下,拉格朗日函数可由以下公式给出:

(106)L(x,λ)=xTAxλxTx

其中,λ被称为与等式约束关联的拉格朗日乘子。可以确定,要使x成为问题的最佳点,拉格朗日的梯度必须在x处为零(这不是唯一的条件,但它是必需的)。也就是说,

(107)xL(x,λ)=x(xTAxλxTx)=2ATx2λx=0

请注意,这只是线性方程Ax=λx。 这表明假设xTx=1,可能最大化(或最小化)xTAx的唯一点是A的特征向量。


CS229 概率论

概率论复习和参考

概率论是对不确定性的研究。通过这门课,我们将依靠概率论中的概念来推导机器学习算法。这篇笔记试图涵盖适用于CS229的概率论基础。概率论的数学理论非常复杂,并且涉及到“分析”的一个分支:测度论。在这篇笔记中,我们提供了概率的一些基本处理方法,但是不会涉及到这些更复杂的细节。

1. 概率的基本要素

为了定义集合上的概率,我们需要一些基本元素,

(108)P(iAi)=iP(Ai)

以上三条性质被称为概率公理

举例

考虑投掷六面骰子的事件。样本空间为Ω={123456}。最简单的事件空间是平凡事件空间F={,Ω}.另一个事件空间是Ω的所有子集的集合。对于第一个事件空间,满足上述要求的唯一概率度量由P()=0p(Ω)=1给出。对于第二个事件空间,一个有效的概率度量是将事件空间中每个事件的概率分配为i/6,这里i 是这个事件集合中元素的数量;例如P({1,2,3,4})=4/6P({1,2,3})=3/6

性质:

1.1 条件概率和独立性

假设B是一个概率非0的事件,我们定义在给定B的条件下A 的条件概率为:

(109)P(A|B)P(AB)P(B)

换句话说,P(A|B)是度量已经观测到B事件发生的情况下A事件发生的概率,两个事件被称为独立事件当且仅当P(AB)=P(A)P(B)(或等价地,P(A|B)=P(A))。因此,独立性相当于是说观察到事件B对于事件A的概率没有任何影响。

2. 随机变量

考虑一个实验,我们翻转10枚硬币,我们想知道正面硬币的数量。这里,样本空间Ω的元素是长度为10的序列。例如,我们可能有w0={HHTHTHHTTT}Ω。然而,在实践中,我们通常不关心获得任何特定正反序列的概率。相反,我们通常关心结果的实值函数,比如我们10次投掷中出现的正面数,或者最长的背面长度。在某些技术条件下,这些函数被称为随机变量

更正式地说,随机变量X是一个的ΩR函数。通常,我们将使用大写字母X(ω)或更简单的X(其中隐含对随机结果ω的依赖)来表示随机变量。我们将使用小写字母x来表示随机变量的值。

举例: 在我们上面的实验中,假设X(ω)是在投掷序列ω中出现的正面的数量。假设投掷的硬币只有10枚,那么X(ω)只能取有限数量的值,因此它被称为离散随机变量。这里,与随机变量X相关联的集合取某个特定值k的概率为:

(110)P(X=k):=P({ω:X(ω)=k})

举例: 假设X(ω)是一个随机变量,表示放射性粒子衰变所需的时间。在这种情况下,X(ω)具有无限多的可能值,因此它被称为连续随机变量。我们将X在两个实常数ab之间取值的概率(其中a<b)表示为:

(111)P(aXb):=P({ω:aX(ω)b})

2.1 累积分布函数

为了指定处理随机变量时使用的概率度量,通常可以方便地指定替代函数(CDFPDFPMF),在本节和接下来的两节中,我们将依次描述这些类型的函数。

累积分布函数(CDF)是函数FX:R[0,1],它将概率度量指定为:

(112)FX(x)P(Xx)

通过使用这个函数,我们可以计算任意事件发生的概率。图1显示了一个样本CDF函数。

图1:一个累计分布函数(CDF)

性质:

2.2 概率质量函数

当随机变量X取有限种可能值(即,X是离散随机变量)时,表示与随机变量相关联的概率度量的更简单的方法是直接指定随机变量可以假设的每个值的概率。特别地,概率质量函数(PMF)是函数 pX:ΩR,这样:

(113)pX(x)P(X=x)

在离散随机变量的情况下,我们使用符号Val(X)表示随机变量X可能假设的一组可能值。例如,如果X(ω)是一个随机变量,表示十次投掷硬币中的正面数,那么Val(X)={012...10}

性质:

2.3 概率密度函数

对于一些连续随机变量,累积分布函数FX(x)处可微。在这些情况下,我们将概率密度函数(PDF)定义为累积分布函数的导数,即:

(114)fX(x)dFX(x)dx

请注意,连续随机变量的概率密度函数可能并不总是存在的(即,如果它不是处处可微)。

根据微分的性质,对于很小的Δx

(115)P(xXx+Δx)fX(x)Δx

CDFPDF(当它们存在时!)都可用于计算不同事件的概率。但是应该强调的是,任意给定点的概率密度函数(PDF)的值不是该事件的概率,即fX(x)P(X=x)。例如,fX(x)可以取大于1的值(但是fX(x)R的任何子集上的积分最多为1)。

性质:

2.4 期望

假设X是一个离散随机变量,其PMFpX(x)g:RR是一个任意函数。在这种情况下,g(X)可以被视为随机变量,我们将g(X)的期望值定义为:

(116)E[g(X)]xVal(X)g(x)pX(x)

如果X是一个连续的随机变量,其PDFfX(x),那么g(X)的期望值被定义为:

(117)E[g(X)]g(x)fX(x)dx

直觉上,g(X)的期望值可以被认为是g(x)对于不同的x值可以取的值的“加权平均值”,其中权重由pX(x)fX(x)给出。作为上述情况的特例,请注意,随机变量本身的期望值,是通过令g(x)=x得到的,这也被称为随机变量的平均值。

性质:

2.5 方差

随机变量X方差是随机变量X的分布围绕其平均值集中程度的度量。形式上,随机变量X的方差定义为:

(118)Var[X]E[(XE(X))2]

使用上一节中的性质,我们可以导出方差的替代表达式:

(119)E[(XE[X])2]=E[X22E[X]X+E[X]2]=E[X2]2E[X]E[X]+E[X]2=E[X2]E[X]2

其中第二个等式来自期望的线性,以及E[X]相对于外层期望实际上是常数的事实。

性质:

举例:

计算均匀随机变量X的平均值和方差,任意x[01],其PDFpX(x)=1,其他地方为0。

(120)E[X]=xfX(x)dx=01xdx=12
(121)E[X2]=x2fX(x)dx=01x2dx=13
(122)Var[X]=E[X2]E[X]2=1314=112

举例:

假设对于一些子集AΩ,有g(x)=1{xA},计算E[g(X)]?

离散情况:

(123)E[g(X)]=xVal(X)1{xA}PX(x)dx=xAPX(x)dx=P(xA)

连续情况:

(124)E[g(X)]=1{xA}fX(x)dx=xAfX(x)dx=P(xA)

2.6 一些常见的随机变量

离散随机变量

(126)p(x)=(nx)px(1p)nx
(127)p(x)=eλλxx!

连续随机变量

(128)f(x)={1ba if axb0 otherwise 
(129)f(x)={λeλx if x00 otherwise 
(130)f(x)=12πσe12σ2(xμ)2

一些随机变量的概率密度函数和累积分布函数的形状如图2所示。

图2:一些随机变量的概率密度函数(PDF)和累积分布函数(CDF)

下表总结了这些分布的一些特性:

分布概率密度函数(PDF)或者概率质量函数(PMF)均值方差
Bernoulli(p)(伯努利分布){p if x=11p if x=0pp(1p)
Binomial(n,p)(二项式分布)(nk)pk(1p)nk 其中:0knnpnpq
Geometric(p)(几何分布)p(1p)k1 其中:k=1,2,1p1pp2
Poisson(λ)(泊松分布)eλλx/x! 其中:k=1,2,λλ
Uniform(a,b)(均匀分布)1ba 存在x(a,b)a+b2(ba)212
Gaussian(μ,σ2)(高斯分布)12πσe12σ2(xμ)2μσ2
Exponential(λ)(指数分布)λeλx x0,λ>01λ1λ2

3. 两个随机变量

到目前为止,我们已经考虑了单个随机变量。然而,在许多情况下,在随机实验中,我们可能有不止一个感兴趣的量。例如,在一个我们掷硬币十次的实验中,我们可能既关心X(ω)=出现的正面数量,也关心Y(ω)=连续最长出现正面的长度。在本节中,我们考虑两个随机变量的设置。

3.1 联合分布和边缘分布

假设我们有两个随机变量,一个方法是分别考虑它们。如果我们这样做,我们只需要FX(x)FY(y)。但是如果我们想知道在随机实验的结果中,XY同时假设的值,我们需要一个更复杂的结构,称为XY联合累积分布函数,定义如下:

(131)FXY(x,y)=P(Xx,Yy)

可以证明,通过了解联合累积分布函数,可以计算出任何涉及到XY的事件的概率。

联合CDF: FXY(x,y)和每个变量的联合分布函数FX(x)FY(y)分别由下式关联:

(132)FX(x)=limyFXY(x,y)dy
(133)FY(y)=limyFXY(x,y)dx

这里我们称FX(x)FY(y)FXY(x,y)边缘累积概率分布函数

性质:

3.2 联合概率和边缘概率质量函数

如果XY是离散随机变量,那么联合概率质量函数 pXY:R×R[0,1]由下式定义:

(134)pXY(x,y)=P(X=x,Y=y)

这里, 对于任意xy0PXY(x,y)1, 并且 xVal(X)yVal(Y)PXY(x,y)=1

两个变量上的联合PMF分别与每个变量的概率质量函数有什么关系?事实上:

(135)pX(x)=ypXY(x,y)

对于pY(y)类似。在这种情况下,我们称pX(x)X的边际概率质量函数。在统计学中,将一个变量相加形成另一个变量的边缘分布的过程通常称为“边缘化”。

3.3 联合概率和边缘概率密度函数

假设XY是两个连续的随机变量,具有联合分布函数FXY。在FXY(x,y)xy中处处可微的情况下,我们可以定义联合概率密度函数

(136)fXY(x,y)=2FXY(x,y)xy

如同在一维情况下,fXY(x,y)P(X=x,Y=y),而是:

(137)xAfXY(x,y)dxdy=P((X,Y)A)

请注意,概率密度函数fXY(x,y)的值总是非负的,但它们可能大于1。尽管如此,可以肯定的是 fXY(x,y)=1

与离散情况相似,我们定义:

(138)fX(x)=fXY(x,y)dy

作为X边际概率密度函数(或边际密度),对于fY(y)也类似。

3.4 条件概率分布

条件分布试图回答这样一个问题,当我们知道X必须取某个值x时,Y上的概率分布是什么?在离散情况下,给定Y的条件概率质量函数是简单的:

(139)pY|X(y|x)=pXY(x,y)pX(x)

假设分母不等于0。

在连续的情况下,在技术上要复杂一点,因为连续随机变量的概率等于零。忽略这一技术点,我们通过类比离散情况,简单地定义给定X=x的条件概率密度为:

(140)fY|X(y|x)=fXY(x,y)fX(x)

假设分母不等于0。

3.5 贝叶斯定理

当试图推导一个变量给定另一个变量的条件概率表达式时,经常出现的一个有用公式是贝叶斯定理

对于离散随机变量XY

(141)PY|X(y|x)=PXY(x,y)PX(x)=PX|Y(x|y)PY(y)yVal(Y)PX|Y(x|y)PY(y)

对于连续随机变量XY

(142)fY|X(y|x)=fXY(x,y)fX(x)=fX|Y(x|y)fY(y)fX|Y(x|y)fY(y)dy

3.6 独立性

如果对于XY的所有值,FXY(x,y)=FX(x)FY(y),则两个随机变量XY是独立的。等价地,

非正式地说,如果“知道”一个变量的值永远不会对另一个变量的条件概率分布有任何影响,那么两个随机变量XY是独立的,也就是说,你只要知道f(x)f(y)就知道关于这对变量(XY)的所有信息。以下引理将这一观察形式化:

引理3.1

如果XY是独立的,那么对于任何ABR,我们有:

(143)P(XA,YB)=P(XA)P(YB)

利用上述引理,我们可以证明如果XY无关,那么X的任何函数都与Y的任何函数无关。

 

3.7 期望和协方差

假设我们有两个离散的随机变量XY并且g:R2R是这两个随机变量的函数。那么g的期望值以如下方式定义:

(144)E[g(X,Y)]xVal(X)yVal(Y)g(x,y)pXY(x,y)

对于连续随机变量XY,类似的表达式是:

(145)E[g(X,Y)]=g(x,y)fXY(x,y)dxdy

我们可以用期望的概念来研究两个随机变量之间的关系。特别地,两个随机变量的协方差定义为:

(146)Cov[X,Y]E[(XE[X])(YE[Y])]

使用类似于方差的推导,我们可以将它重写为:

(147)Cov[X,Y]=E[(XE[X])(YE[Y])]=E[XYXE[Y]YE[X]+E[X]E[Y]]=E[XY]E[X]E[Y]E[Y]E[X]+E[X]E[Y]]=E[XY]E[X]E[Y]

在这里,说明两种协方差形式相等的关键步骤是第三个等号,在这里我们使用了这样一个事实,即E[X]E[Y]实际上是常数,可以被提出来。当cov[XY]=0时,我们说XY不相关。

性质:

4. 多个随机变量

上一节介绍的概念和想法可以推广到两个以上的随机变量。特别是,假设我们有n个连续随机变量,X1(ω),X2(ω),Xn(ω)。在本节中,为了表示简单,我们只关注连续的情况,对离散随机变量的推广工作类似。

4.1 基本性质

我们可以定义X1,X2,,Xn联合累积分布函数联合概率密度函数,以及给定X2,,XnX1边缘概率密度函数为:

(148)FX1,X2,,Xn(x1,x2,xn)=P(X1x1,X2x2,,Xnxn)
(149)fX1,X2,,Xn(x1,x2,xn)=nFX1,X2,,Xn(x1,x2,xn)x1xn
(150)fX1(X1)=fX1,X2,,Xn(x1,x2,xn)dx2dxn
(151)fX1|X2,,Xn(x1|x2,xn)=fX1,X2,,Xn(x1,x2,xn)fX2,,Xn(x1,x2,xn)

为了计算事件ARn的概率,我们有:

(152)P((x1,x2,xn)A)=(x1,x2,xn)AfX1,X2,,Xn(x1,x2,xn)dx1dx2dxn

链式法则:

从多个随机变量的条件概率的定义中,可以看出:

(153)f(x1,x2,,xn)=f(xn|x1,x2,xn1)f(x1,x2,xn1)=f(xn|x1,x2,xn1)f(xn1|x1,x2,xn2)f(x1,x2,xn2)==f(x1)i=2nf(xi|x1,,xi1)

独立性:对于多个事件,A1,,Ak,我们说A1,,Ak 是相互独立的,当对于任何子集S{12,,k},我们有:

(154)P(iSAi)=iSP(Ai)

同样,我们说随机变量X1,X2,,Xn是独立的,如果:

(155)f(x1,,xn)=f(x1)f(x2)f(xn)

这里,相互独立性的定义只是两个随机变量独立性到多个随机变量的自然推广。

独立随机变量经常出现在机器学习算法中,其中我们假设属于训练集的训练样本代表来自某个未知概率分布的独立样本。为了明确独立性的重要性,考虑一个“坏的”训练集,我们首先从某个未知分布中抽取一个训练样本(x(1),y(1)),然后将完全相同的训练样本的m1个副本添加到训练集中。在这种情况下,我们有:

(156)P((x(1),y(1)),.(x(m),y(m)))i=1mP(x(i),y(i))

尽管训练集的大小为m,但这些例子并不独立!虽然这里描述的过程显然不是为机器学习算法建立训练集的明智方法,但是事实证明,在实践中,样本的不独立性确实经常出现,并且它具有减小训练集的“有效大小”的效果。

4.2 随机向量

假设我们有n个随机变量。当把所有这些随机变量放在一起工作时,我们经常会发现把它们放在一个向量中是很方便的...我们称结果向量为随机向量(更正式地说,随机向量是从ΩRn的映射)。应该清楚的是,随机向量只是处理n个随机变量的一种替代符号,因此联合概率密度函数和综合密度函数的概念也将适用于随机向量。

期望:

考虑g:RnR中的任意函数。这个函数的期望值 被定义为

(157)E[g(X)]=Rng(x1,x2,,xn)fX1,X2,,Xn(x1,x2,xn)dx1dx2dxnE[g(X)]=Rng(x1,x2,,xn)fX1,X2,,Xn(x1,x2,xn)dx1dx2dxn

其中,Rn是从n个连续积分。如果g是从RnRm的函数,那么g的期望值是输出向量的元素期望值,即,如果g是:

 

(158)g(x)=[g1(x)g2(x)gm(x)]

那么,

(159)E[g(X)]=[E[g1(X)]E[g2(X)]E[gm(X)]]

 

协方差矩阵:对于给定的随机向量X:ΩRn,其协方差矩阵Σn×n平方矩阵,其输入由Σij=Cov[Xi,Xj]给出。从协方差的定义来看,我们有:

(160)Σ=[Cov[X1,X1]Cov[X1,Xn]Cov[Xn,X1]Cov[Xn,Xn]]=[E[X12]E[X1]E[X1]E[X1Xn]E[X1]E[Xn]E[XnX1]E[Xn]E[X1]E[Xn2]E[Xn]E[Xn]]=[E[X12]E[X1Xn]E[XnX1]E[Xn2]][E[X1]E[X1]E[X1]E[Xn]E[Xn]E[X1]E[Xn]E[Xn]]=E[XXT]E[X]E[X]T==E[(XE[X])(XE[X])T]

其中矩阵期望以明显的方式定义。 协方差矩阵有许多有用的属性:

4.3 多元高斯分布

随机向量上概率分布的一个特别重要的例子叫做多元高斯或多元正态分布。随机向量XRn被认为具有多元正态(或高斯)分布,当其具有均值μRn和协方差矩阵ΣS++n(其中S++n指对称正定n×n矩阵的空间)

fX1,X2,,Xn(x1,x2,,xn;μ,Σ)=1(2π)n/2|Σ|1/2exp(12(xμ)TΣ1(xμ))

我们把它写成XN(μ,Σ)。请注意,在n=1的情况下,它降维成普通正态分布,其中均值参数为μ1,方差为Σ11

一般来说,高斯随机变量在机器学习和统计中非常有用,主要有两个原因:

首先,在统计算法中对“噪声”建模时,它们非常常见。通常,噪声可以被认为是影响测量过程的大量小的独立随机扰动的累积;根据中心极限定理,独立随机变量的总和将趋向于“看起来像高斯”。

其次,高斯随机变量便于许多分析操作,因为实际中出现的许多涉及高斯分布的积分都有简单的封闭形式解。我们将在本课程稍后遇到这种情况。

5. 其他资源

一本关于CS229所需概率水平的好教科书是谢尔顿·罗斯的《概率第一课》(A First Course on Probability by Sheldon Ross)。